iT邦幫忙

2024 iThome 鐵人賽

DAY 13
0
AI/ ML & Data

AI 到底是怎麼換臉的?系列 第 14

2024 Day 13 :卷積神經網絡(CNN)進階與應用

  • 分享至 

  • xImage
  •  

本系列部分內容由AI產生,最終有經過人工確認內容及潤稿。

在之前的學習中,我們了解了卷積神經網絡(Convolutional Neural Networks, CNN)的基本原理和結構,以及它們在圖像分類和識別中的應用。今天,我們將深入探討 CNN 的進階技術,包括各種改進的 CNN 結構,如 ResNet、Inception、MobileNet 等,以及它們在計算機視覺領域的應用。這將幫助我們更好地理解深度學習模型的發展方向,並為後續的研究和實踐奠定基礎。


卷積神經網絡的挑戰

在擁有之前的基礎我們先來淺談一下CNN目前的挑戰。

深度網絡的訓練困難

  • 梯度消失與爆炸:隨著網絡深度增加,梯度可能消失或爆炸,導致訓練困難。
  • 過擬合:深度網絡容易過擬合,需要採用正則化和數據增強技術。(這個幾乎是每個數據訓練會面臨到的挑戰)

計算資源需求高

參數量大:深度網絡具有大量的參數,訓練和推理時需要大量的計算資源。
實時性要求:在移動端或嵌入式設備上,需要輕量化的模型。


深度 CNN 結構的改進

殘差網絡(ResNet)

  • 提出者:何凱明等人在 2015 年提出。
  • 主要思想:通過引入殘差學習(Residual Learning),解決深度網絡的退化問題。
  • 結構特點:
    -殘差塊(Residual Block):通過快捷連接(Shortcut Connection),使網絡學習殘差映射。
    • 優點:允許訓練超過 100 層的深度網絡,提高模型性能。
  • 公式:
    殘差塊的輸出為:https://ithelp.ithome.com.tw/upload/images/20240927/201695082rSLmQrMaS.png
    其中,𝐹(𝑥)是殘差函數,𝑥是輸入。

Inception 網絡

  • 提出者:Google 在 2014 年提出,最初為 Inception V1,後續有 V2、V3、V4 等版本。
  • 主要思想:在同一層中使用不同尺寸的卷積核,捕捉不同尺度的特徵。
  • 結構特點:
    • Inception 模塊:包含 1x1、3x3、5x5 卷積,以及 3x3 池化操作,並在通道維度上進行拼接。
    • 優點:提高網絡的寬度,減少參數量,提高計算效率。

MobileNet

  • 提出者:Google 在 2017 年提出,針對移動和嵌入式設備的高效 CNN 結構。

  • 主要思想:使用深度可分離卷積(Depthwise Separable Convolution)減少計算量和參數量。

  • 結構特點:

    • 深度可分離卷積:將標準卷積分解為深度卷積和點卷積,大幅減少計算量。
    • 優點:模型輕量化,適合在資源受限的設備上運行。
  • 計算量比較:
    標準卷積的計算量:
    https://ithelp.ithome.com.tw/upload/images/20240927/20169508gpiSekkd1t.png

    深度可分離卷積的計算量:
    https://ithelp.ithome.com.tw/upload/images/20240927/201695089mkKG5dBq7.png
    其中,
    𝐷𝐾是卷積核尺寸,𝑀和𝑁是輸入和輸出通道數,𝐷𝐹是特徵圖尺寸。


CNN 在計算機視覺任務中的應用

圖像分類

  • 應用:識別圖像中的主要物體類別。
  • 模型選擇:ResNet、Inception、DenseNet 等深度網絡在 ImageNet 等數據集上取得優異性能。

目標檢測

  • 任務:在圖像中定位並識別多個物體。
  • 典型模型:
    • Faster R-CNN:基於區域候選的兩階段檢測器,準確率高。
    • YOLO(You Only Look Once):單階段檢測器,速度快,適合實時應用。

圖像分割

  • 任務:為圖像中的每個像素分配一個類別標籤。
  • 典型模型:
    • FCN(Fully Convolutional Networks):將全連接層替換為卷積層,實現像素級預測。
    • U-Net:結合下采樣和上采樣路徑,廣泛應用於醫學圖像分割。

姿態估計

  • 任務:檢測人體或物體的關鍵點,估計其姿態。
  • 典型模型:OpenPose,使用多尺度 CNN,實現實時多人姿態估計。

CNN 模型的選擇與使用

根據任務需求選擇模型

  • 高精度要求:選擇 ResNet、DenseNet 等深度模型。
  • 實時性要求:選擇 MobileNet、ShuffleNet 等輕量化模型。

模型微調與遷移學習

  • 預訓練模型:利用在大型數據集上預訓練的模型,進行微調,適應新任務。
  • 優勢:加速訓練過程,提高模型性能,減少對大量標註數據的需求。

模型優化

  • 量化:將浮點數計算轉換為低精度整數計算,減少模型大小和計算量。
  • 剪枝:移除冗餘的神經元或卷積核,減小模型規模。
  • 知識蒸餾:通過大模型指導小模型的訓練,提升小模型的性能。

實踐案例

由於進度安排,原本這邊給各位操作ResNet的部份我們就先行跳過,日後會再推出番外篇的!


本日總結

今天我們深入學習了卷積神經網絡(CNN)的進階技術和應用。從 ResNet、Inception 到 MobileNet,我們了解了深度學習模型的發展和優化方向。這些先進的網絡架構在圖像分類、目標檢測、圖像分割等任務中發揮了重要作用。在實際應用中,需要根據具體任務需求,選擇合適的模型,並採用適當的優化策略,才能取得最佳的效果。
那我們就明天見了~掰掰~~


上一篇
2024 Day 12:人臉識別技術
下一篇
2024 Day 14:目標檢測技術與應用
系列文
AI 到底是怎麼換臉的?31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言